package com.sino.operation.peripheral.esc.request.cnaps2_000104;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class EscUPPCdtTrfInf0001_04 {

    @JsonProperty("cnaps2_paypathcode")
    @ApiModelProperty(name = "paypathcode",value = "﻿汇划路径,1001-大额,1002-小额,1003超级网银,1020-人行通,1005-平台公共")
    private String paypathcode;

    @JsonProperty("cnaps2_busitype")
    @ApiModelProperty(name = "busitype",value = "业务类型编码,A100-普通汇兑")
    private String busitype;

    @JsonProperty("cnaps2_busikind")
    @ApiModelProperty(name = "busikind",value = "业务种类编码,02103-网银支付")
    private String busikind;

    @JsonProperty("cnaps2_payeracc")
    @ApiModelProperty(name = "payeracc",value = "付款人账号")
    private String payeracc;

    @JsonProperty("cnaps2_payername")
    @ApiModelProperty(name = "payername",value = "付款人名称")
    private String payername;

    @JsonProperty("cnaps2_payeracctype")
    @ApiModelProperty(name = "payeracctype",value = "付款人账号类型,1005时可不输,1001/1002/1003/1020时必输")
    private String payeracctype;

    @JsonProperty("cnaps2_payeraddr")
    @ApiModelProperty(name = "payeraddr",value = "付款人地址,10053时不输")
    private String payeraddr;

    @JsonProperty("cnaps2_payeraccbank")
    @ApiModelProperty(name = "payeraccbank",value = "付款人开户行行号,1005时可不输,1001/1002/1020时必输")
    private String payeraccbank;

    @JsonProperty("cnaps2_payeeaccbank")
    @ApiModelProperty(name = "payeeaccbank",value = "收款人开户行行号")
    private String payeeaccbank;

    @JsonProperty("cnaps2_payeeacctype")
    @ApiModelProperty(name = "payeeacctype",value = "付款人账号类型,1-对公 2-对私,1020人行通必输1003非必输")
    private String payeeacctype;

    @JsonProperty("cnaps2_payeeacc")
    @ApiModelProperty(name = "payeeacc",value = "收款人账号")
    private String payeeacc;

    @JsonProperty("cnaps2_payeename")
    @ApiModelProperty(name = "payeename",value = "收款人名称")
    private String payeename;

    @JsonProperty("cnaps2_payeeaddr")
    @ApiModelProperty(name = "payeeaddr",value = "收款人地址")
    private String payeeaddr;

    @JsonProperty("cnaps2_currency")
    @ApiModelProperty(name = "currency",value = "币种,CNY-人民币")
    private String currency;

    @JsonProperty("cnaps2_amount")
    @ApiModelProperty(name = "amount",value = "交易金额,有小数点，整数部分最多16位数字，小数部分固定2位数字")
    private BigDecimal amount;

    @JsonProperty("cnaps2_priority")
    @ApiModelProperty(name = "priority",value = "业务优先级,2：特急；1：紧急；0：普通；")
    private String priority;

    @JsonProperty("cnaps2_cuspwkd")
    @ApiModelProperty(name = "cuspwkd",value = "是否校验密码;0:不校验密码,1:校验查询密码2:校验交易密码")
    private String cuspwkd;

    @JsonProperty("cnaps2_cuspswd")
    @ApiModelProperty(name = "cuspswd",value = "卡折密码;cuspwkd为1,2时必输")
    private String cuspswd;

    @JsonProperty("cnaps2_postscript")
    @ApiModelProperty(name = "postscript",value = "备注")
    private String postscript;

    @JsonProperty("cnaps2_pathpriority")
    @ApiModelProperty(name = "pathpriority",value = "汇路优先级;1:速度优先,2:费用优先[汇路代码为1005必输]")
    private String pathpriority;

    @JsonProperty("cnaps2_acty")
    @ApiModelProperty(name = "acty",value = "付款账户类型,与payeracctype送同样的值,1005/1003时可不输,1002/1001/1020时必输")
    private String acty;

    @JsonProperty("cnaps2_sendflag")
    @ApiModelProperty(name = "sendflag",value = "转账方式2：次日发送；1：实时；0：普通；")
    private String sendflag;

    @JsonProperty("cnaps2_caaccountno")
    @ApiModelProperty(name = "caaccountno",value = "付款人账号")
    private String caaccountno;

    @JsonProperty("cnaps2_caname")
    @ApiModelProperty(name = "caname",value = "付款人名称")
    private String caname;

    @JsonProperty("cnaps2_caacctypeflag")
    @ApiModelProperty(name = "caacctypeflag",value = "付款人账号类型")
    private String caacctypeflag;

    @JsonProperty("cnaps2_cardpin")
    @ApiModelProperty(name = "cardpin",value = "卡折密码")
    private String cardpin;

    @JsonProperty("cnaps2_cardtype")
    @ApiModelProperty(name = "cardtype",value = "卡类型")
    private String cardtype;

    @JsonProperty("cnaps2_cashfeeflag")
    @ApiModelProperty(name = "cashfeeflag",value = "手续费现转标识：1－现金 2－转账")
    private String cashfeeflag;

    @JsonProperty("cnaps2_cashflag")
    @ApiModelProperty(name = "cashflag",value = "现转标识：1－现金 2－转账")
    private String cashflag;

    @JsonProperty("cnaps2_catrack2")
    @ApiModelProperty(name = "catrack2",value = "二磁道")
    private String catrack2;

    @JsonProperty("cnaps2_catranamt")
    @ApiModelProperty(name = "catranamt",value = "交易金额")
    private String catranamt;

    @JsonProperty("cnaps2_cusopfg")
    @ApiModelProperty(name = "cusopfg",value = "操作标志")
    private String cusopfg;

    @JsonProperty("cnaps2_cuspkfg")
    @ApiModelProperty(name = "cuspkfg",value = "存折/支票户标志")
    private String cuspkfg;

    @JsonProperty("cnaps2_custrk2")
    @ApiModelProperty(name = "custrk2",value = "二磁道")
    private String custrk2;

    @JsonProperty("cnaps2_dlidno")
    @ApiModelProperty(name = "dlidno",value = "代理人证件号码")
    private String dlidno;

    @JsonProperty("cnaps2_dlidtype")
    @ApiModelProperty(name = "dlidtype",value = "代理人证件种类")
    private String dlidtype;

    @JsonProperty("cnaps2_dlname")
    @ApiModelProperty(name = "dlname",value = "代理人名称")
    private String dlname;

    @JsonProperty("cnaps2_drawtype")
    @ApiModelProperty(name = "drawtype",value = "支取方式")
    private String drawtype;

    @JsonProperty("cnaps2_feecaltype")
    @ApiModelProperty(name = "feecaltype",value = "手续费计算方式 0：渠道上送，1：支付平台计算")
    private String feecaltype;

    @JsonProperty("cnaps2_idno")
    @ApiModelProperty(name = "idno",value = "证件号码")
    private String idno;

    @JsonProperty("cnaps2_idtype")
    @ApiModelProperty(name = "idtype",value = "证件种类")
    private String idtype;

    @JsonProperty("cnaps2_mediumcode")
    @ApiModelProperty(name = "mediumcode",value = "付款人账号类型")
    private String mediumcode;

    @JsonProperty("cnaps2_operbrno")
    @ApiModelProperty(name = "operbrno",value = "操作机构码")
    private String operbrno;

    @JsonProperty("cnaps2_opertellerno")
    @ApiModelProperty(name = "opertellerno",value = "操作柜员号")
    private String opertellerno;

    @JsonProperty("cnaps2_payeeaccbankname")
    @ApiModelProperty(name = "payeeaccbankname",value = "付款人开户行行名")
    private String payeeaccbankname;

    @JsonProperty("cnaps2_payeridno")
    @ApiModelProperty(name = "payeridno",value = "证件号码")
    private String payeridno;

    @JsonProperty("cnaps2_payeridtype")
    @ApiModelProperty(name = "payeridtype",value = "证件种类")
    private String payeridtype;

    @JsonProperty("cnaps2_paypass")
    @ApiModelProperty(name = "paypass",value = "支付密码")
    private String paypass;

    @JsonProperty("cnaps2_pch")
    @ApiModelProperty(name = "pch",value = "批次号")
    private String pch;

    @JsonProperty("cnaps2_proxyidno")
    @ApiModelProperty(name = "proxyidno",value = "代理人证件号码")
    private String proxyidno;

    @JsonProperty("cnaps2_proxyidtype")
    @ApiModelProperty(name = "proxyidtype",value = "代理人证件种类")
    private String proxyidtype;

    @JsonProperty("cnaps2_proxyname")
    @ApiModelProperty(name = "proxyname",value = "代理人名称")
    private String proxyname;

    @JsonProperty("cnaps2_realamount")
    @ApiModelProperty(name = "realamount",value = "实际交易金额")
    private String realamount;

    @JsonProperty("cnaps2_vochno")
    @ApiModelProperty(name = "vochno",value = "凭证号")
    private String vochno;

    @JsonProperty("cnaps2_vouchdate")
    @ApiModelProperty(name = "vouchdate",value = "凭证日期")
    private String vouchdate;

    @JsonProperty("cnaps2_vouchtype")
    @ApiModelProperty(name = "vouchtype",value = "凭证种类")
    private String vouchtype;

    @JsonProperty("cnaps2_tradetype")
    @ApiModelProperty(name = "tradetype",value = "交易类型 01:实时 02:普通")
    private String tradetype;

    @JsonProperty("cnaps2_oldseq")
    @ApiModelProperty(name = "oldseq",value = "交易流水号")
    private String oldseq;

    @JsonProperty("cnaps2_rhttellerno")
    @ApiModelProperty(name = "rhttellerno",value = "操作柜员号")
    private String rhttellerno;

    @JsonProperty("cnaps2_realpayeracctype")
    @ApiModelProperty(name = "realpayeracctype",value = "实际付款人账号类型")
    private String realpayeracctype;

    @JsonProperty("cnaps2_totalauthflag")
    @ApiModelProperty(name = "totalauthflag",value = "累计金额标识")
    private String totalauthflag;
}
